Mongoose 的 Virtual Property 有三個重點
下列範例使用 Node.js 創建 virtual property instance
定義 Mongoose Model:
const personSchema = new mongoose.Schema({
first: String, // 姓
last: String // 名
});
使用 Virtual Property:
personSchema.virtual('fullName').get(function () {
return `${this.first} ${this.last}`; // Virtual Property 用來獲得全名,該資訊未被存入Database 內
});
這邊使用 personSchema.virtual()
方法加了一個"fullName"(全名)的 Virtual Property,它不在DB內,但可以用來生成完整的姓
建立 Mongoose model:
const Person = mongoose.model('Person', personSchema);
使用 "personSchema" 定義建立了一个 "Person" 的 Mongoose model。
建立 Instance:
const tammy = new Person({first: 'Tammy', last: 'Chow'});
使用 model 建立了一个名為 "tammy" 的 model instance,包含名 "Tammy" 和姓 "Chow" 的 data。
最後 tammy.fullName
返回 ‘Tammy Chow’